1 Introduction: LIST Department ERIN

Here are preliminary results of the bibliometric mapping of the 2022 Luxembourg research evaluation. Its purpose is:

  • To map the broader research community and distinct research field the department contributes to.
  • Identify core knowledge bases, research areaS, TRENDS AND TOPICS.
  • Highlight the positioning of the department within this dynamics.

The method for the research-field-mapping can be reiviewed here:

Rakas, M., & Hain, D. S. (2019). The state of innovation system research: What happens beneath the surface?. Research Policy, 48(9), 103787.

2 Topic modelling

2.1 Topics by topwords

2.2 Topics over time

`summarise()` has grouped output by 'PY'. You can override using the `.groups` argument.

3 Knowledge Bases: Co-Citation network analysis

Note: This analysis refers the co-citation analysis, where the cited references and not the original publications are the unit of analysis. See tab Technical descriptionfor additional explanations

3.1 Knowledge Bases summary

3.1.1 Main Indicators

In order to partition networks into components or clusters, we deploy a community detection technique based on the Lovain Algorithm (Blondel et al., 2008). The Lovain Algorithm is a heuristic method that attempts to optimize the modularity of communities within a network by maximizing within- and minimizing between-community connectivity. We identify the following communities = knowledge bases.

com name dgr_int dgr
Community 1: KB 1
1 MCGUIRE K.J. MCDONNELL J.J. A REVIEW AND EVALUATION OF CATCHMENT TRANSIT TIME MODELING (2006) 5066 5212
1 HARMAN C.J. TIME-VARIABLE TRANSIT TIME DISTRIBUTIONS AND TRANSPORT: THEORY AND APPLICATION TO STORAGE-DEPENDENT TRANSPORT OF CHLORIDE IN A WATERSHE... 3586 3713
1 TETZLAFF D. BIRKEL C. DICK J. GERIS J. SOULSBY C. STORAGE DYNAMICS IN HYDROPEDOLOGICAL UNITS CONTROL HILLSLOPE CONNECTIVITY RUNOFF GENERATION AND T... 2492 2595
1 MCGUIRE K.J. MCDONNELL J.J. WEILER M. KENDALL C. MCGLYNN B.L. WELKER J.M. SEIBERT J. THE ROLE OF TOPOGRAPHY ON CATCHMENT-SCALE WATER RESIDENCE TIME... 2279 2354
1 JASECHKO S. KIRCHNER J.W. WELKER J.M. MCDONNELL J.J. SUBSTANTIAL PROPORTION OF GLOBAL STREAMFLOW LESS THAN THREE MONTHS OLD (2016) 2277 2323
1 BOTTER G. BERTUZZO E. RINALDO A. CATCHMENT RESIDENCE AND TRAVEL TIME DISTRIBUTIONS: THE MASTER EQUATION (2011) 2276 2378
1 KIRCHNER J.W. FENG X. NEAL C. FRACTAL STREAM CHEMISTRY AND ITS IMPLICATIONS FOR CONTAMINANT TRANSPORT IN CATCHMENTS (2000) 2251 2309
1 HRACHOWITZ M. SAVENIJE H. BOGAARD T.A. TETZLAFF D. SOULSBY C. WHAT CAN FLUX TRACKING TEACH US ABOUT WATER AGE DISTRIBUTION PATTERNS AND THEIR TEMPO... 2093 2270
1 BOTTER G. BERTUZZO E. RINALDO A. TRANSPORT IN THE HYDROLOGIC RESPONSE: TRAVEL TIME DISTRIBUTIONS SOIL MOISTURE DYNAMICS AND THE OLD WATER PARADOX (... 2041 2142
1 KLAUS J. MCDONNELL J.J. HYDROGRAPH SEPARATION USING STABLE ISOTOPES: REVIEW AND EVALUATION (2013) 2007 2088
Community 2: KB 2
2 ROUND F.E. CRAWFORD R.M. MANN D.G. (1990) 5576 5611
2 VAN DAM H. MERTENS A. SINKELDAM J. A CODED CHECKLIST AND ECOLOGICAL INDICATOR VALUES OF FRESHWATER DIATOMS FROM THE NETHERLANDS (1994) 1577 1632
2 KÜTZING F.T. (1844) 1199 1202
2 ROSS R. COX E.J. KARAYEVA N.I. MANN D.G. PADDOCK T.B.B. SIMONSEN R. SIMS P.A. AN AMENDED TERMINOLOGY FOR THE SILICEOUS COMPONENTS OF THE DIATOM CEL... 1049 1049
2 RIMET F. BOUCHEZ A. LIFE-FORMS CELL-SIZES AND ECOLOGICAL GUILDS OF DIATOMS IN EUROPEAN RIVERS (2012) 618 625
2 MANN D.G. VANORMELINGEN P. AN INORDINATE FONDNESS? THE NUMBER DISTRIBUTIONS AND ORIGINS OF DIATOM SPECIES (2013) 546 550
2 HOFMANN G. WERUM M. LANGE-BERTALOT H. (2011) 514 520
2 WILLIAMS D.M. ROUND F.E. REVISION OF THE GENUS FRAGILARIA (1987) 507 507
2 ROUND F.E. BUKHTIYAROVA L. FOUR NEW GENERA BASED ON ACHNANTHES (ACHNANTHIDIUM) 473 473
2 KRAMMER K. CYMBOPLEURA DELICATA NAVICYMBULA GOMPHOCYMBELLOPSIS AFROCYMBELLA (2003) 464 468
Community 3: KB 3
3 FIERER N. BRADFORD M.A. JACKSON R.B. TOWARD AN ECOLOGICAL CLASSIFICATION OF SOIL BACTERIA (2007) 4322 4326
3 LAUBER C.L. HAMADY M. KNIGHT R. FIERER N. PYROSEQUENCING-BASED ASSESSMENT OF SOIL PH AS A PREDICTOR OF SOIL BACTERIAL COMMUNITY STRUCTURE AT THE CO... 4120 4131
3 EDGAR R.C. SEARCH AND CLUSTERING ORDERS OF MAGNITUDE FASTER THAN BLAST (2010) 3162 3223
3 FIERER N. JACKSON R.B. THE DIVERSITY AND BIOGEOGRAPHY OF SOIL BACTERIAL COMMUNITIES (2006) 2220 2220
3 EDGAR R.C. HAAS B.J. CLEMENTE J.C. QUINCE C. KNIGHT R. UCHIME IMPROVES SENSITIVITY AND SPEED OF CHIMERA DETECTION (2011) 1834 1851
3 TRESEDER K.K. NITROGEN ADDITIONS AND MICROBIAL BIOMASS: A META-ANALYSIS OF ECOSYSTEM STUDIES (2008) 1489 1492
3 BERG G. SMALLA K. PLANT SPECIES AND SOIL TYPE COOPERATIVELY SHAPE THE STRUCTURE AND FUNCTION OF MICROBIAL COMMUNITIES IN THE RHIZOSPHERE (2009) 1379 1388
3 RAMIREZ K.S. CRAINE J.M. FIERER N. CONSISTENT EFFECTS OF NITROGEN AMENDMENTS ON SOIL MICROBIAL COMMUNITIES AND PROCESSES ACROSS BIOMES (2012) 1259 1259
3 JANSSEN P.H. IDENTIFYING THE DOMINANT SOIL BACTERIAL TAXA IN LIBRARIES OF 16S RRNA AND 16S RRNA GENES (2006) 1235 1235
3 PHILIPPOT L. RAAIJMAKERS J.M. LEMANCEAU P. VAN DER PUTTEN W.H. GOING BACK TO THE ROOTS: THE MICROBIAL ECOLOGY OF THE RHIZOSPHERE (2013) 1158 1161
Community 4: KB 4
4 MA J.F. YAMAJI N. A COOPERATIVE SYSTEM OF SILICON TRANSPORT IN PLANTS (2015) 3549 3549
4 MA J.F. TAMAI K. YAMAJI N. MITANI N. KONISHI S. KATSUHARA M. ISHIGURO M. YANO M. A SILICON TRANSPORTER IN RICE (2006) 2961 2961
4 MA J.F. YAMAJI N. SILICON UPTAKE AND ACCUMULATION IN HIGHER PLANTS (2006) 2882 2882
4 MA J.F. YAMAJI N. MITANI N. TAMAI K. KONISHI S. FUJIWARA T. KATSUHARA M. YANO M. AN EFFLUX TRANSPORTER OF SILICON IN RICE (2007) 2472 2472
4 MA J.F. ROLE OF SILICON IN ENHANCING THE RESISTANCE OF PLANTS TO BIOTIC AND ABIOTIC STRESSES (2004) 2460 2460
4 EPSTEIN E. THE ANOMALY OF SILICON IN PLANT BIOLOGY (1994) 2432 2432
4 EPSTEIN E. SILICON (1999) 2275 2275
4 HODSON M.J. WHITE P.J. MEAD A. BROADLEY M.R. PHYLOGENETIC VARIATION IN THE SILICON COMPOSITION OF PLANTS (2005) 2036 2036
4 CHIBA Y. MITANI N. YAMAJI N. MA J.F. HVLSI1 IS A SILICON INFLUX TRANSPORTER IN BARLEY (2009) 1946 1946
4 MITANI N. MA J.F. UPTAKE SYSTEM OF SILICON IN DIFFERENT PLANT SPECIES (2005) 1504 1504
Community 5: KB 5
5 SCHOUPS G. VRUGT J.A. A FORMAL LIKELIHOOD FUNCTION FOR PARAMETER AND PREDICTIVE INFERENCE OF HYDROLOGIC MODELS WITH CORRELATED HETEROSCEDASTIC AND ... 1414 1504
5 KIRCHNER J.W. GETTING THE RIGHT ANSWERS FOR THE RIGHT REASONS: LINKING MEASUREMENTS ANALYSES AND MODELS TO ADVANCE THE SCIENCE OF HYDROLOGY (2006) 1405 2269
5 GUPTA H.V. KLING H. YILMAZ K.K. MARTINEZ G.F. DECOMPOSITION OF THE MEAN SQUARED ERROR AND NSE PERFORMANCE CRITERIA: IMPLICATIONS FOR IMPROVING HYDR... 1209 1577
5 SEIBERT J. MCDONNELL J.J. ON THE DIALOG BETWEEN EXPERIMENTALIST AND MODELER IN CATCHMENT HYDROLOGY: USE OF SOFT DATA FOR MULTICRITERIA MODEL CALIBR... 1055 1259
5 CLARK M.P. KAVETSKI D. FENICIA F. PURSUING THE METHOD OF MULTIPLE WORKING HYPOTHESES FOR HYDROLOGICAL MODELING (2011) 1049 1171
5 GUPTA H.V. WAGENER T. LIU Y. RECONCILING THEORY WITH OBSERVATIONS: ELEMENTS OF A DIAGNOSTIC APPROACH TO MODEL EVALUATION (2008) 1044 1076
5 FENICIA F. KAVETSKI D. SAVENIJE H.H.G. ELEMENTS OF A FLEXIBLE APPROACH FOR CONCEPTUAL HYDROLOGICAL MODELING: 1. MOTIVATION AND THEORETICAL DEVELOPM... 950 986
5 GHARARI S. HRACHOWITZ M. FENICIA F. GAO H. SAVENIJE H.H.G. USING EXPERT KNOWLEDGE TO INCREASE REALISM IN ENVIRONMENTAL SYSTEM MODELS CAN DRAMATICAL... 915 992
5 HRACHOWITZ M. FOVET O. RUIZ L. EUSER T. GHARARI S. NIJZINK R. FREER J. GASCUEL-ODOUX C. PROCESS CONSISTENCY IN MODELS: THE IMPORTANCE OF SYSTEM SIG... 850 917
5 EUSER T. WINSEMIUS H.C. HRACHOWITZ M. FENICIA F. UHLENBROOK S. SAVENIJE H.H.G. A FRAMEWORK TO ASSESS THE REALISM OF MODEL STRUCTURES USING HYDROLOG... 843 870
Community 6: KB 6
6 MARTINIS S. TWELE A. VOIGT S. TOWARDS OPERATIONAL NEAR REAL-TIME FLOOD DETECTION USING A SPLIT-BASED AUTOMATIC THRESHOLDING PROCEDURE ON HIGH RESOL... 1730 1730
6 TWELE A. CAO W. PLANK S. MARTINIS S. SENTINEL-1-BASED FLOOD MAPPING: A FULLY AUTOMATED PROCESSING CHAIN (2016) 1290 1290
6 PULVIRENTI L. PIERDICCA N. CHINI M. GUERRIERO L. AN ALGORITHM FOR OPERATIONAL FLOOD MAPPING FROM SYNTHETIC APERTURE RADAR (SAR) 1279 1279
6 MARTINIS S. KERSTEN J. TWELE A. A FULLY AUTOMATED TERRASAR-X BASED FLOOD SERVICE (2015) 1160 1160
6 CHINI M. HOSTACHE R. GIUSTARINI L. MATGEN P. A HIERARCHICAL SPLIT-BASED APPROACH FOR PARAMETRIC THRESHOLDING OF SAR IMAGES: FLOOD INUNDATION AS A T... 895 895
6 MATGEN P. HOSTACHE R. SCHUMANN G. PFISTER L. HOFFMANN L. SAVENIJE H.H.G. TOWARDS AN AUTOMATED SAR-BASED FLOOD MONITORING SYSTEM: LESSONS LEARNED FR... 796 796
6 PULVIRENTI L. CHINI M. PIERDICCA N. BONI G. USE OF SAR DATA FOR DETECTING FLOODWATER IN URBAN AND AGRICULTURAL AREAS: THE ROLE OF THE INTERFEROMETR... 755 755
6 SCHLAFFER S. MATGEN P. HOLLAUS M. WAGNER W. FLOOD DETECTION FROM MULTI-TEMPORAL SAR DATA USING HARMONIC ANALYSIS AND CHANGE DETECTION (2015) 645 645
6 PULVIRENTI L. CHINI M. PIERDICCA N. GUERRIERO L. FERRAZZOLI P. FLOOD MONITORING USING MULTI-TEMPORAL COSMO-SKYMED DATA: IMAGE SEGMENTATION AND SIGN... 620 623
6 GIUSTARINI L. HOSTACHE R. KAVETSKI D. CHINI M. CORATO G. SCHLAFFER S. MATGEN P. PROBABILISTIC FLOOD MAPPING USING SYNTHETIC APERTURE RADAR DATA (2016) 580 580

3.1.2 Development of Knowledge Bases

3.2 Technical description

In a co-cittion network, the strength of the relationship between a reference pair \(m\) and \(n\) (\(s_{m,n}^{coc}\)) is expressed by the number of publications \(C\) which are jointly citing reference \(m\) and \(n\).

\[s_{m,n}^{coc} = \sum_i c_{i,m} c_{i,n}\]

The intuition here is that references which are frequently cited together are likely to share commonalities in theory, topic, methodology, or context. It can be interpreted as a measure of similarity as evaluated by other researchers that decide to jointly cite both references. Because the publication process is time-consuming, co-citation is a backward-looking measure, which is appropriate to map the relationship between core literature of a field.

4 Research Areas: Bibliographic coupling analysis

4.1 Research Areas main summary

This is arguably the more interesting part. Here, we identify the literature’s current knowledge frontier by carrying out a bibliographic coupling analysis of the publications in our corpus. This measure uses bibliographical information of publications to establish a similarity relationship between them. Again, method details to be found in the tab Technical description. As you will see, we identify the main research area, but also a set of adjacent research areas with some theoretical/methodological/application overlap.

4.1.1 Main Characteristics

To identify communities in the field’s knowledge frontier (labeled research areas) we again use the Lovain Algorithm (Blondel et al., 2008). We identify the following communities = research areas.

4.1.2 Categorization

I up to now gain only provide the 10 most central articles, which can be used to classify them

com_name AU PY TI dgr_int TC TC_year
Research Area 1: RA 1
RA 1 ZENG J;LIU X;SONG L;LI... 2016 NITROGEN FERTILIZATION DIRECTLY AFFECTS SOIL BACTERIAL DIVERSITY AND INDIRECTLY AFFECTS BACTERIAL COMMUNITY COMPOSITION 7.8539881 323 53.833333
RA 1 FIERER N 2017 EMBRACING THE UNKNOWN: DISENTANGLING THE COMPLEXITIES OF THE SOIL MICROBIOME 1.7497254 1036 207.200000
RA 1 ZHAO J;NI T;LI J;LU Q;... 2016 EFFECTS OF ORGANIC-INORGANIC COMPOUND FERTILIZER WITH REDUCED CHEMICAL FERTILIZER APPLICATION ON CROP YIELDS, SOIL BIOLOGI... 9.1884165 196 32.666667
RA 1 CARINI P;MARSDEN PJ;LE... 2016 RELIC DNA IS ABUNDANT IN SOIL AND OBSCURES ESTIMATES OF SOIL MICROBIAL DIVERSITY 4.4628867 400 66.666667
RA 1 FRANCIOLI D;SCHULZ E;L... 2016 MINERAL VS. ORGANIC AMENDMENTS: MICROBIAL COMMUNITY STRUCTURE, ACTIVITY AND ABUNDANCE OF AGRICULTURALLY RELEVANT MICROBES ... 5.6816985 295 49.166667
RA 1 KIELAK AM;BARRETO CC;K... 2016 THE ECOLOGY OF ACIDOBACTERIA: MOVING BEYOND GENES AND GENOMES 3.7372131 440 73.333333
RA 1 ZHANG Y;SHEN H;HE X;TH... 2017 FERTILIZATION SHAPES BACTERIAL COMMUNITY STRUCTURE BY ALTERATION OF SOIL PH 10.8095291 113 22.600000
RA 1 DAI Z;SU W;CHEN H;BARB... 2018 LONG-TERM NITROGEN FERTILIZATION DECREASES BACTERIAL DIVERSITY AND FAVORS THE GROWTH OF ACTINOBACTERIA AND PROTEOBACTERIA ... 6.0589642 192 48.000000
RA 1 JIAN S;LI J;CHEN J;WAN... 2016 SOIL EXTRACELLULAR ENZYME ACTIVITIES, SOIL CARBON AND NITROGEN STORAGE UNDER NITROGEN FERTILIZATION: A META-ANALYSIS 3.4136078 309 51.500000
RA 1 BANERJEE S;KIRKBY CA;S... 2016 NETWORK ANALYSIS REVEALS FUNCTIONAL REDUNDANCY AND KEYSTONE TAXA AMONGST BACTERIAL AND FUNGAL COMMUNITIES DURING ORGANIC M... 3.0571018 341 56.833333
Research Area 2: RA 2
RA 2 KULIKOVSKIY M;MALTSEV ... 2019 DESCRIPTION OF A NEW DIATOM GENUS DOROFEYUKEA GEN. NOV. WITH REMARKS ON PHYLOGENY OF THE FAMILY STAURONEIDACEAE 5.1810609 42 14.000000
RA 2 RIVERA SF;VASSELON V;J... 2018 METABARCODING OF LAKE BENTHIC DIATOMS: FROM STRUCTURE ASSEMBLAGES TO ECOLOGICAL ASSESSMENT 3.5571417 58 14.500000
RA 2 NAKOV T;BEAULIEU JM;AL... 2018 ACCELERATED DIVERSIFICATION IS RELATED TO LIFE HISTORY AND LOCOMOTION IN A HYPERDIVERSE LINEAGE OF MICROBIAL EUKARYOTES (D... 2.3952655 54 13.500000
RA 2 RIMET F;CHAUMEIL P;KEC... 2016 R-SYST::DIATOM: AN OPEN-ACCESS AND CURATED BARCODE DATABASE FOR DIATOMS AND FRESHWATER MONITORING 2.2164562 58 9.666667
RA 2 SOININEN J;JAMONEAU A;... 2016 GLOBAL PATTERNS AND DRIVERS OF SPECIES AND TRAIT COMPOSITION IN DIATOMS 1.3355206 94 15.666667
RA 2 MEDLIN LK 2016 EVOLUTION OF THE DIATOMS: MAJOR STEPS IN THEIR EVOLUTION AND A REVIEW OF THE SUPPORTING MOLECULAR AND MORPHOLOGICAL EVIDENCE 2.0224517 50 8.333333
RA 2 ZIDAROVA R;KOPALOVÁ K;... 2016 TEN NEW BACILLARIOPHYTA SPECIES FROM JAMES ROSS ISLAND AND THE SOUTH SHETLAND ISLANDS (MARITIME ANTARCTIC REGION) 5.7865626 17 2.833333
RA 2 FALASCO E;PIANO E;BONA F 2016 DIATOM FLORA IN MEDITERRANEAN STREAMS: FLOW INTERMITTENCY THREATENS ENDANGERED SPECIES 3.8854273 25 4.166667
RA 2 THOMAS EW;STEPANEK JG;... 2016 HISTORICAL AND CURRENT PERSPECTIVES ON THE SYSTEMATICS OF THE 'ENIGMATIC' DIATOM GENUS RHOICOSPHENIA (BACILLARIOPHYTA), WI... 5.4735074 17 2.833333
RA 2 KECK F;RIMET F;FRANC A... 2016 PHYLOGENETIC SIGNAL IN DIATOM ECOLOGY: PERSPECTIVES FOR AQUATIC ECOSYSTEMS BIOMONITORING 2.9700262 31 5.166667
Research Area 3: RA 3
RA 3 KIRCHNER JW 2016 AGGREGATION IN ENVIRONMENTAL SYSTEMS-PART 1: SEASONAL TRACER CYCLES QUANTIFY YOUNG WATER FRACTIONS, BUT NOT MEAN TRANSIT T... 7.9938246 182 30.333333
RA 3 SPRENGER M;LEISTERT H;... 2016 ILLUMINATING HYDROLOGICAL PROCESSES AT THE SOIL-VEGETATION-ATMOSPHERE INTERFACE WITH WATER STABLE ISOTOPES 4.3973884 232 38.666667
RA 3 BENETTIN P;SOULSBY C;B... 2017 USING SAS FUNCTIONS AND HIGH-RESOLUTION ISOTOPE DATA TO UNRAVEL TRAVEL TIME DISTRIBUTIONS IN HEADWATER CATCHMENTS 10.2908499 79 15.800000
RA 3 HRACHOWITZ M;BENETTIN ... 2016 TRANSIT TIMES—THE LINK BETWEEN HYDROLOGY AND WATER QUALITY AT THE CATCHMENT SCALE 5.9947385 132 22.000000
RA 3 SPRENGER M;STUMPP C;WE... 2019 THE DEMOGRAPHICS OF WATER: A REVIEW OF WATER AGES IN THE CRITICAL ZONE 7.6241869 98 32.666667
RA 3 KIRCHNER JW 2016 AGGREGATION IN ENVIRONMENTAL SYSTEMS-PART 2: CATCHMENT MEAN TRANSIT TIMES AND YOUNG WATER FRACTIONS UNDER HYDROLOGIC NONST... 7.4768418 98 16.333333
RA 3 SPRENGER M;TETZLAFF D;... 2017 EVAPORATION FRACTIONATION IN A PEATLAND DRAINAGE NETWORK AFFECTS STREAM WATER ISOTOPE COMPOSITION 7.8288782 75 15.000000
RA 3 SPRENGER M;SEEGER S;BL... 2016 TRAVEL TIMES IN THE VADOSE ZONE: VARIABILITY IN SPACE AND TIME 7.6619636 76 12.666667
RA 3 BERGHUIJS WR;KIRCHNER JW 2017 THE RELATIONSHIP BETWEEN CONTRASTING AGES OF GROUNDWATER AND STREAMFLOW 10.0873529 49 9.800000
RA 3 SPRENGER M;TETZLAFF D;... 2017 SOIL WATER STABLE ISOTOPES REVEAL EVAPORATION DYNAMICS AT THE SOIL-PLANT-ATMOSPHERE INTERFACE OF THE CRITICAL ZONE 5.6416644 81 16.200000
Research Area 4: RA 4
RA 4 COSKUN D;DESHMUKH R;SO... 2019 THE CONTROVERSIES OF SILICON'S ROLE IN PLANT BIOLOGY 7.0294972 244 81.333333
RA 4 COSKUN D;BRITTO DT;HUY... 2016 THE ROLE OF SILICON IN HIGHER PLANTS UNDER SALINITY AND DROUGHT STRESS 5.4944986 194 32.333333
RA 4 YAN G-C;NIKOLIC M;YE M... 2018 SILICON ACQUISITION AND ACCUMULATION IN PLANT AND ITS SIGNIFICANCE FOR AGRICULTURE 8.7596836 80 20.000000
RA 4 FREW A;WESTON LA;REYNO... 2018 THE ROLE OF SILICON IN PLANT BIOLOGY: A PARADIGM SHIFT IN RESEARCH APPROACH 6.2130338 112 28.000000
RA 4 GUERRIERO G;HAUSMAN J-... 2016 SILICON AND THE PLANT EXTRACELLULAR MATRIX 5.5925121 121 20.166667
RA 4 LUYCKX M;HAUSMAN J-F;L... 2017 SILICON AND PLANTS: CURRENT KNOWLEDGE AND TECHNOLOGICAL PERSPECTIVES 2.8844434 234 46.800000
RA 4 DESHMUKH R;BÉLANGER RR 2016 MOLECULAR EVOLUTION OF AQUAPORINS AND SILICON INFLUX IN PLANTS 6.1932997 103 17.166667
RA 4 BHAT JA;SHIVARAJ SM;SI... 2019 ROLE OF SILICON IN MITIGATION OF HEAVY METAL STRESSES IN CROP PLANTS 4.5947521 129 43.000000
RA 4 COOKE J;LEISHMAN MR 2016 CONSISTENT ALLEVIATION OF ABIOTIC STRESS WITH SILICON ADDITION: A META-ANALYSIS 4.2046436 129 21.500000
RA 4 RIOS JJ;MARTÍNEZ-BALLE... 2017 SILICON-MEDIATED IMPROVEMENT IN PLANT SALINITY TOLERANCE: THE ROLE OF AQUAPORINS 5.5219754 93 18.600000
Research Area 5: RA 5
RA 5 TWELE A;CAO W;PLANK S;... 2016 SENTINEL-1-BASED FLOOD MAPPING: A FULLY AUTOMATED PROCESSING CHAIN 4.3645537 255 42.500000
RA 5 CHINI M;HOSTACHE R;GIU... 2017 A HIERARCHICAL SPLIT-BASED APPROACH FOR PARAMETRIC THRESHOLDING OF SAR IMAGES: FLOOD INUNDATION AS A TEST CASE 6.8267925 129 25.800000
RA 5 TENG J;JAKEMAN AJ;VAZE... 2017 FLOOD INUNDATION MODELLING: A REVIEW OF METHODS, RECENT ADVANCES AND UNCERTAINTY ANALYSIS 1.4126702 469 93.800000
RA 5 SHEN X;WANG D;MAO K;AN... 2019 INUNDATION EXTENT MAPPING BY SYNTHETIC APERTURE RADAR: A REVIEW 7.0441229 86 28.666667
RA 5 CHINI M;PELICH R;PULVI... 2019 SENTINEL-1 INSAR COHERENCE TO DETECT FLOODWATER IN URBAN AREAS: HOUSTON AND HURRICANE HARVEY AS A TEST CASE 6.6039647 91 30.333333
RA 5 PULVIRENTI L;CHINI M;P... 2016 USE OF SAR DATA FOR DETECTING FLOODWATER IN URBAN AND AGRICULTURAL AREAS: THE ROLE OF THE INTERFEROMETRIC COHERENCE 5.4120537 111 18.500000
RA 5 CIAN F;MARCONCINI M;CE... 2018 NORMALIZED DIFFERENCE FLOOD INDEX FOR RAPID FLOOD MAPPING: TAKING ADVANTAGE OF EO BIG DATA 5.5711334 89 22.250000
RA 5 DEVRIES B;HUANG C;ARMS... 2020 RAPID AND ROBUST MONITORING OF FLOOD EVENTS USING SENTINEL-1 AND LANDSAT DATA ON THE GOOGLE EARTH ENGINE 5.6402823 76 38.000000
RA 5 BIORESITA F;PUISSANT A... 2018 A METHOD FOR AUTOMATIC AND RAPID MAPPING OF WATER SURFACES FROM SENTINEL-1 IMAGERY 4.1831909 101 25.250000
RA 5 LIANG J;LIU D 2020 A LOCAL THRESHOLDING APPROACH TO FLOOD WATER DELINEATION USING SENTINEL-1 SAR IMAGERY 7.9276724 51 25.500000
Research Area 6: RA 6
RA 6 FOWLER KJA;PEEL MC;WES... 2016 SIMULATING RUNOFF UNDER CHANGING CLIMATIC CONDITIONS: REVISITING AN APPARENT DEFICIENCY OF CONCEPTUAL RAINFALL-RUNOFF MODELS 4.7142304 98 16.333333
RA 6 HRACHOWITZ M;CLARK MP 2017 HESS OPINIONS: THE COMPLEMENTARY MERITS OF COMPETING MODELLING PHILOSOPHIES IN HYDROLOGY 4.0632645 85 17.000000
RA 6 MCINERNEY D;THYER M;KA... 2017 IMPROVING PROBABILISTIC PREDICTION OF DAILY STREAMFLOW BY IDENTIFYING PARETO OPTIMAL APPROACHES FOR MODELING HETEROSCEDAST... 4.3373303 68 13.600000
RA 6 CLARK MP;BIERKENS MFP;... 2017 THE EVOLUTION OF PROCESS-BASED HYDROLOGIC MODELS: HISTORICAL CHALLENGES AND THE COLLECTIVE QUEST FOR PHYSICAL REALISM 2.2596769 105 21.000000
RA 6 FENICIA F;KAVETSKI D;S... 2016 FROM SPATIALLY VARIABLE STREAMFLOW TO DISTRIBUTED HYDROLOGICAL MODELS: ANALYSIS OF KEY MODELING DECISIONS 3.5423891 61 10.166667
RA 6 NIJZINK RC;ALMEIDA S;P... 2018 CONSTRAINING CONCEPTUAL HYDROLOGICAL MODELS WITH MULTIPLE INFORMATION SOURCES 3.6744203 52 13.000000
RA 6 RAKOVEC O;KUMAR R;ATTI... 2016 IMPROVING THE REALISM OF HYDROLOGIC MODEL FUNCTIONING THROUGH MULTIVARIATE PARAMETER ESTIMATION 2.7731872 68 11.333333
RA 6 BRODERICK C;MATTHEWS T... 2016 TRANSFERABILITY OF HYDROLOGICAL MODELS AND ENSEMBLE AVERAGING METHODS BETWEEN CONTRASTING CLIMATIC PERIODS 3.4882365 49 8.166667
RA 6 NIJZINK RC;SAMANIEGO L... 2016 THE IMPORTANCE OF TOPOGRAPHY-CONTROLLED SUB-GRID PROCESS HETEROGENEITY AND SEMI-QUANTITATIVE PRIOR CONSTRAINTS IN DISTRIBU... 4.0447162 41 6.833333
RA 6 KHATAMI S;PEEL MC;PETE... 2019 EQUIFINALITY AND FLUX MAPPING: A NEW APPROACH TO MODEL EVALUATION AND PROCESS REPRESENTATION UNDER UNCERTAINTY 4.3988652 35 11.666667
Research Area 7: RA 7
RA 7 HEMMATI R 2018 OPTIMAL DESIGN AND OPERATION OF ENERGY STORAGE SYSTEMS AND GENERATORS IN THE NETWORK INSTALLED WITH WIND TURBINES CONSIDER... 2.0185063 60 15.000000
RA 7 LEONARD MD;MICHAELIDES... 2020 ENERGY STORAGE NEEDS FOR THE SUBSTITUTION OF FOSSIL FUEL POWER PLANTS WITH RENEWABLES 0.8278966 103 51.500000
RA 7 GUO H;XU Y;CHEN H;GUO ... 2017 THERMODYNAMIC ANALYTICAL SOLUTION AND EXERGY ANALYSIS FOR SUPERCRITICAL COMPRESSED AIR ENERGY STORAGE SYSTEM 1.9674034 41 8.200000
RA 7 MARCHI B;PASETTI M;ZAN... 2017 LIFE CYCLE COST ANALYSIS FOR BESS OPTIMAL SIZING 1.8881441 38 7.600000
RA 7 CHEN LX;XIE MN;ZHAO PP... 2018 A NOVEL ISOBARIC ADIABATIC COMPRESSED AIR ENERGY STORAGE (IA-CAES) SYSTEM ON THE BASE OF VOLATILE FLUID 1.7532343 39 9.750000
RA 7 ACAR C 2018 A COMPREHENSIVE EVALUATION OF ENERGY STORAGE OPTIONS FOR BETTER SUSTAINABILITY 1.5946272 40 10.000000
RA 7 CHEN LX;HU P;ZHAO PP;X... 2018 A NOVEL THROTTLING STRATEGY FOR ADIABATIC COMPRESSED AIR ENERGY STORAGE SYSTEM BASED ON AN EJECTOR 1.6855203 36 9.000000
RA 7 HUNT JD;BYERS E;WADA Y... 2020 GLOBAL RESOURCE POTENTIAL OF SEASONAL PUMPED HYDROPOWER STORAGE FOR ENERGY AND WATER STORAGE 1.0654940 50 25.000000
RA 7 MEHRJERDI H 2019 MULTILEVEL HOME ENERGY MANAGEMENT INTEGRATED WITH RENEWABLE ENERGIES AND STORAGE TECHNOLOGIES CONSIDERING CONTINGENCY OPER... 2.0098641 26 8.666667
RA 7 BROWN T;SCHLACHTBERGER... 2018 SYNERGIES OF SECTOR COUPLING AND TRANSMISSION REINFORCEMENT IN A COST-OPTIMISED, HIGHLY RENEWABLE EUROPEAN ENERGY SYSTEM 0.2247438 229 57.250000
Research Area 8: RA 8
RA 8 ANDRE CM;HAUSMAN J-F;G... 2016 CANNABIS SATIVA: THE PLANT OF THE THOUSAND AND ONE MOLECULES 1.3130552 545 90.833333
RA 8 LUO X;REITER MA;D'ESPA... 2019 COMPLETE BIOSYNTHESIS OF CANNABINOIDS AND THEIR UNNATURAL ANALOGUES IN YEAST 0.6650644 265 88.333333
RA 8 PELLATI F;BRIGHENTI V;... 2018 NEW METHODS FOR THE COMPREHENSIVE ANALYSIS OF BIOACTIVE COMPOUNDS IN CANNABIS SATIVA L. (HEMP) 1.8313582 82 20.500000
RA 8 HARTSEL JA;EADES J;HIC... 2016 CANNABIS SATIVA AND HEMP 1.4393210 99 16.500000
RA 8 BOOTH JK;PAGE JE;BOHLM... 2017 TERPENE SYNTHASES FROM CANNABIS SATIVA 1.2695218 111 22.200000
RA 8 BRIGHENTI V;PELLATI F;... 2017 DEVELOPMENT OF A NEW EXTRACTION TECHNIQUE AND HPLC METHOD FOR THE ANALYSIS OF NON-PSYCHOACTIVE CANNABINOIDS IN FIBRE-TYPE ... 0.8602153 119 23.800000
RA 8 ZAGER JJ;LANGE I;SRIVI... 2019 GENE NETWORKS UNDERLYING CANNABINOID AND TERPENOID ACCUMULATION IN CANNABIS 2.2500561 44 14.666667
RA 8 LIVINGSTON SJ;QUILICHI... 2020 CANNABIS GLANDULAR TRICHOMES ALTER MORPHOLOGY AND METABOLITE CONTENT DURING FLOWER MATURATION 1.5939913 58 29.000000
RA 8 HAZEKAMP A;TEJKALOVÁ K... 2016 CANNABIS: FROM CULTIVAR TO CHEMOVAR II - A METABOLOMICS APPROACH TO CANNABIS CLASSIFICATION 0.8243384 83 13.833333
RA 8 WELLING MT;LIU L;SHAPT... 2016 CHARACTERISATION OF CANNABINOID COMPOSITION IN A DIVERSE CANNABIS SATIVA L. GERMPLASM COLLECTION 1.8670628 30 5.000000
Research Area 9: RA 9
NA SANTOS JA;FRAGA H;MALH... 2020 A REVIEW OF THE POTENTIAL CLIMATE CHANGE IMPACTS AND ADAPTATION OPTIONS FOR EUROPEAN VITICULTURE 0.9417228 99 49.500000
NA PARKER AK;GARCÍA DE CO... 2020 TEMPERATURE-BASED GRAPEVINE SUGAR RIPENESS MODELLING FOR A WIDE RANGE OF VITIS VINIFERA L. CULTIVARS 1.1668973 27 13.500000
NA SOUKOULIS C;CAMBIER S;... 2016 CHEMICAL STABILITY AND BIOACCESSIBILITY OF Β-CAROTENE ENCAPSULATED IN SODIUM ALGINATE O/W EMULSIONS: IMPACT OF CA2+ MEDIAT... 0.6897289 38 6.333333
NA GERHARDS M;SCHLERF M;M... 2019 CHALLENGES AND FUTURE PERSPECTIVES OF MULTI-/HYPERSPECTRAL THERMAL INFRARED REMOTE SENSING FOR CROP WATER-STRESS DETECTION... 0.3555093 70 23.333333
NA MOLITOR D;JUNK J 2019 CLIMATE CHANGE IS IMPLICATING A TWO-FOLD IMPACT ON AIR TEMPERATURE INCREASE IN THE RIPENING PERIOD UNDER THE CONDITIONS OF... 1.0316848 24 8.000000
NA TORREGROSSA D;HANSEN J... 2017 A DATA-DRIVEN METHODOLOGY TO SUPPORT PUMP PERFORMANCE ANALYSIS AND ENERGY EFFICIENCY OPTIMIZATION IN WASTE WATER TREATMENT... 0.6591468 35 7.000000
NA CORTE-REAL J;IDDIR M;S... 2016 EFFECT OF DIVALENT MINERALS ON THE BIOACCESSIBILITY OF PURE CAROTENOIDS AND ON PHYSICAL PROPERTIES OF GASTRO-INTESTINAL FL... 0.5733862 39 6.500000
NA SOUKOULIS C;BOHN T 2018 A COMPREHENSIVE OVERVIEW ON THE MICRO- AND NANO-TECHNOLOGICAL ENCAPSULATION ADVANCES FOR ENHANCING THE CHEMICAL STABILITY ... 0.2000788 99 24.750000
NA SOUKOULIS C;TSEVDOU M;... 2017 MODULATION OF CHEMICAL STABILITY AND IN VITRO BIOACCESSIBILITY OF BETA-CAROTENE LOADED IN KAPPA-CARRAGEENAN OIL-IN-GEL EMU... 0.5478256 35 7.000000
NA PASQUALI M;BEYER M;LOG... 2016 A EUROPEAN DATABASE OF FUSARIUM GRAMINEARUM AND F. CULMORUM TRICHOTHECENE GENOTYPES 0.2029387 93 15.500000

4.1.3 Development

`summarise()` has grouped output by 'com_name'. You can override using the `.groups` argument.

4.1.4 Connectivity between the research areas

Warning: Ignoring unknown parameters: strenght

4.1.5 Knowledge Bases, Research Areas & Topics

4.2 Technical description

In a bibliographic coupling network, the coupling-strength between publications is determined by the number of commonly cited references they share, assuming a common pool of references to indicate similarity in context, methods, or theory. Formally, the strength of the relationship between a publication pair \(i\) and \(j\) (\(s_{i,j}^{bib}\)) is expressed by the number of commonly cited references.

\[s_{i,j}^{bib} = \sum_m c_{i,m} c_{j,m}\]

Since our corpus contains publications which differ strongly in terms of the number of cited references, we normalize the coupling strength by the Jaccard similarity coefficient. Here, we weight the intercept of two publications’ bibliography (shared refeences) by their union (number of all references cited by either \(i\) or \(j\)). It is bounded between zero and one, where one indicates the two publications to have an identical bibliography, and zero that they do not share any cited reference. Thereby, we prevent publications from having high coupling strength due to a large bibliography (e.g., literature surveys).

\[S_{i,j}^{jac-bib} =\frac{C(i \cap j)}{C(i \cup j)} = \frac{s_{i,j}^{bib}}{c_i + c_j - s_{i,j}^{bib}}\]

More recent articles have a higher pool of possible references to co-cite to, hence they are more likely to be coupled. Consequently, bibliographic coupling represents a forward looking measure, and the method of choice to identify the current knowledge frontier at the point of analysis.

5 Endnotes

LS0tCnRpdGxlOiAiTHV4ZW1ib3VyZyBSZXNlYXJjaCBFdmFsdWF0aW9uIDIwMjIiCmF1dGhvcjogIkRhbmllbCBTLiBIYWluIgpkYXRlOiAiYHIgZm9ybWF0KFN5cy50aW1lKCksICclZCAlQiwgJVknKWAiCm91dHB1dDoKICBodG1sX25vdGVib29rOgogICAgZGZfcHJpbnQ6IHBhZ2VkCiAgICB0b2M6IHllcwogICAgdG9jX2RlcHRoOiAzCiAgICB0b2NfZmxvYXQ6IHllcwogICAgbnVtYmVyX3NlY3Rpb25zOiB5ZXMKICAgIGNvZGVfZm9sZGluZzogaGlkZQogIGh0bWxfZG9jdW1lbnQ6CiAgICB0b2M6IHllcwogICAgdG9jX2RlcHRoOiAnMycKICAgIGRmX3ByaW50OiBwYWdlZApwYXJhbXM6CiAgICBpbnNpdHV0ZTogVGVzdEluc3QKICAgIGRlcGFydG1lbnQ6IFRlc3RkZXB0Ci0tLQoKYGBge3Igc2V0dXAsIGluY2x1ZGU9RkFMU0V9CiMjIyBHZW5lcmljIHByZWFtYmxlCnJtKGxpc3Q9bHMoKSkKU3lzLnNldGVudihMQU5HID0gImVuIikKb3B0aW9ucyhzY2lwZW4gPSA1KQpzZXQuc2VlZCgxMzM3KQoKIyMjIExvYWQgcGFja2FnZXMgIAojIGdlbmVyYWwKbGlicmFyeSh0aWR5dmVyc2UpCmxpYnJhcnkobWFncml0dHIpCgojIEtpYmxpbyAmIE5XCmxpYnJhcnkoYmlibGlvbWV0cml4KQpsaWJyYXJ5KHRpZHlncmFwaCkKbGlicmFyeShnZ3JhcGgpCgojIE5MUApsaWJyYXJ5KHRpZHl0ZXh0KQoKIyBEYXRhdml6CmxpYnJhcnkocGxvdGx5KQoKIyBLbml0CmxpYnJhcnkoa25pdHIpICMgRm9yIGRpc3BsYXkgb2YgdGhlIG1hcmtkb3duCmxpYnJhcnkoa2FibGVFeHRyYSkgIyBGb3IgdGFibGUgc3R5bGluZwoKIyBvd24gZnVuY3Rpb25zCnNvdXJjZSgiLi4vZnVuY3Rpb25zL2Z1bmN0aW9uc19iYXNpYy5SIikKc291cmNlKCIuLi9mdW5jdGlvbnMvZnVuY3Rpb25zX3N1bW1hcnkuUiIpCnNvdXJjZSgiLi4vZnVuY3Rpb25zLzAwX3BhcmFtZXRlcnMuUiIpCgojIEtuaXRyIG9wdGlvbnMKa25pdHI6Om9wdHNfY2h1bmskc2V0KGVjaG8gPSBGQUxTRSwgCiAgICAgICAgICAgICAgICAgICAgICB3YXJuaW5nID0gRkFMU0UsIAogICAgICAgICAgICAgICAgICAgICAgbWVzc2FnZSA9IEZBTFNFKQpgYGAKCmBgYHtyLCBpbmNsdWRlPUZBTFNFfQp2YXJfaW5zdCA8LSBwYXJhbXMkaW5zdGl0dXRlCnZhcl9kZXB0IDwtIHBhcmFtcyRkZXBhcnRtZW50CmBgYAoKYGBge3IsIGluY2x1ZGU9RkFMU0V9CiN2YXJfaW5zdCA8LSAnTElTVCcKI3Zhcl9kZXB0IDwtICdFUklOJwpgYGAKCgoKCiMgSW50cm9kdWN0aW9uOiBgciB2YXJfaW5zdGAgRGVwYXJ0bWVudCBgciB2YXJfZGVwdGAKCkhlcmUgYXJlIHByZWxpbWluYXJ5IHJlc3VsdHMgb2YgdGhlIGJpYmxpb21ldHJpYyBtYXBwaW5nIG9mIHRoZSAyMDIyIEx1eGVtYm91cmcgcmVzZWFyY2ggZXZhbHVhdGlvbi4gSXRzIHB1cnBvc2UgaXM6CgoqIFRvIG1hcCB0aGUgYnJvYWRlciByZXNlYXJjaCBjb21tdW5pdHkgYW5kIGRpc3RpbmN0IHJlc2VhcmNoIGZpZWxkIHRoZSBkZXBhcnRtZW50IGNvbnRyaWJ1dGVzIHRvLgoqIElkZW50aWZ5IGNvcmUga25vd2xlZGdlIGJhc2VzLCByZXNlYXJjaCBhcmVhUywgVFJFTkRTIEFORCBUT1BJQ1MuCiogSGlnaGxpZ2h0IHRoZSBwb3NpdGlvbmluZyBvZiB0aGUgZGVwYXJ0bWVudCB3aXRoaW4gdGhpcyBkeW5hbWljcy4KClRoZSBtZXRob2QgZm9yIHRoZSByZXNlYXJjaC1maWVsZC1tYXBwaW5nIGNhbiBiZSByZWl2aWV3ZWQgaGVyZToKCltSYWthcywgTS4sICYgSGFpbiwgRC4gUy4gKDIwMTkpLiBUaGUgc3RhdGUgb2YgaW5ub3ZhdGlvbiBzeXN0ZW0gcmVzZWFyY2g6IFdoYXQgaGFwcGVucyBiZW5lYXRoIHRoZSBzdXJmYWNlPy4gUmVzZWFyY2ggUG9saWN5LCA0OCg5KSwgMTAzNzg3Ll0oaHR0cHM6Ly9kb2kub3JnLzEwLjEwMTYvai5yZXNwb2wuMjAxOS4wNC4wMTEpCgoKPCEtLSAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgLS0+CjwhLS0gIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIC0tPgo8IS0tICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIE5FWFQgUEFSVCAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyAtLT4KPCEtLSAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgLS0+CjwhLS0gIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIC0tPgoKYGBge3IsIGluY2x1ZGU9RkFMU0V9CiMgTG9hZCBkYXRhCk0gPC0gcmVhZFJEUyhwYXN0ZTAoJy4uLy4uL3RlbXAvTV8nLCBzdHJfdG9fbG93ZXIodmFyX2luc3QpLCAnXycsIHN0cl90b19sb3dlcih2YXJfZGVwdCksICcucmRzJykpICU+JSBhc190aWJibGUoKSAlPiUgCiAgZGlzdGluY3QoVVQsIC5rZWVwX2FsbCA9IFRSVUUpICU+JSAKICBmaWx0ZXIoUFkgPj0gUFlfbWluLCBQWSA8PSBQWV9tYXgpCmBgYAoKIyBUb3BpYyBtb2RlbGxpbmcKCmBgYHtyLCBpbmNsdWRlPUZBTFNFfQp0ZXh0X3RpZHkgPC0gcmVhZFJEUyhwYXN0ZTAoJy4uLy4uL3RlbXAvdGV4dF90aWR5XycsIHN0cl90b19sb3dlcih2YXJfaW5zdCksICdfJywgc3RyX3RvX2xvd2VyKHZhcl9kZXB0KSwgJy5yZHMnKSkKdGV4dF9sZGEgPC0gcmVhZFJEUyhwYXN0ZTAoJy4uLy4uL3RlbXAvdGV4dF9MREFfJywgc3RyX3RvX2xvd2VyKHZhcl9pbnN0KSwgJ18nLCBzdHJfdG9fbG93ZXIodmFyX2RlcHQpLCAnLnJkcycpKSAKCnRleHRfbGRhX2JldGEgPC0gdGV4dF9sZGEgJT4lIHRpZHkobWF0cml4ID0gImJldGEiKSAKdGV4dF9sZGFfZ2FtbWEgPC0gdGV4dF9sZGEgJT4lIHRpZHkobWF0cml4ID0gImdhbW1hIikKYGBgCgpgYGB7ciwgaW5jbHVkZT1GQUxTRX0KY29tX25hbWVzX3RvcCA8LSB0aWJibGUoIAogIGNvbSA9IDE6KHRleHRfbGRhX2dhbW1hICU+JSBwdWxsKHRvcGljKSAlPiUgbl9kaXN0aW5jdCgpKSwKICB0eXBlID0gJ1RQJywKICBjb2wgPSBjb20gJT4lIGdnX2NvbG9yX3NlbGVjdChwYWwgPSBwYWxfdHApLAogIGNvbV9uYW1lID0gCiAgICAjICMgMXN0IGFsdGVybmF0aXZlOiBOdW1iZXIgdGhlbSAxLW4KICAgIHBhc3RlKHR5cGUsIDE6KHRleHRfbGRhX2dhbW1hICU+JSBwdWxsKHRvcGljKSAlPiUgbl9kaXN0aW5jdCgpKSkKICAjICMgMm5kIGFsdGVybmF0aXZlOiBMb2FkIGZyb20gY3N2CiAgIyByZWFkX2NzdignLi4vLi4vZGF0YS9jb21tdW5pdHlfbGFiZWxpbmcnKSAlPiUgZmlsdGVyKHR5cGUgPSAndG9waWMnLCBpbnN0aXR1dGUgPSB2YXJfaW5zdCwgZGVwYXJ0bWVudCA9IHZhcl9kZXB0KSAlPiUgYXJyYW5nZShjb20pICU+JSBwdWxsKGxhYmVsKQogICMgM3JkIGFsdGVybmF0aXZlOiBkZWNsYXJlIGhlcmUKICAgICNjKCcxIFRJUyAmIE1hcmtldHMnLCAnMiA/IC4uLiAnLCkKICApCmBgYAoKYGBge3IsIGluY2x1ZGU9RkFMU0V9CnRleHRfbGRhX2JldGEgJTw+JSAgbGVmdF9qb2luKGNvbV9uYW1lc190b3AgJT4lIHNlbGVjdChjb20sIGNvbV9uYW1lLCBjb2wpLCBieSA9IGMoJ3RvcGljJyA9ICdjb20nKSkKdGV4dF9sZGFfZ2FtbWEgJTw+JSBsZWZ0X2pvaW4oY29tX25hbWVzX3RvcCAlPiUgc2VsZWN0KGNvbSwgY29tX25hbWUsIGNvbCksIGJ5ID0gYygndG9waWMnID0gJ2NvbScpKQpgYGAKCgoKIyMgVG9waWNzIGJ5IHRvcHdvcmRzCmBgYHtyLCBmaWcud2lkdGg9MTcuNSwgZmlnLmhlaWdodD0xNy41fSAKdGV4dF9sZGFfYmV0YSAlPiUKICBncm91cF9ieShjb21fbmFtZSkgJT4lCiAgc2xpY2VfbWF4KGJldGEsIG4gPSAxMCkgJT4lCiAgdW5ncm91cCgpICU+JQogIG11dGF0ZSh0ZXJtID0gcmVvcmRlcl93aXRoaW4odGVybSwgYmV0YSwgY29tX25hbWUpKSAlPiUKICBnZ3Bsb3QoYWVzKHRlcm0sIGJldGEsIGZpbGwgPSBmYWN0b3IoY29tX25hbWUpKSkgKwogIGdlb21fY29sKHNob3cubGVnZW5kID0gRkFMU0UpICsKICBmYWNldF93cmFwKH4gY29tX25hbWUsIHNjYWxlcyA9ICJmcmVlIiwgbmNvbCA9IDMpICsKICBjb29yZF9mbGlwKCkgKwogIHNjYWxlX3hfcmVvcmRlcmVkKCkgKwogIGxhYnMoeCA9ICJJbnRyYS10b3BpYyBkaXN0cmlidXRpb24gb2Ygd29yZCIsCiAgICAgICB5ID0gIldvcmRzIGluIHRvcGljIikgKyAKICBzY2FsZV9maWxsX21hbnVhbChuYW1lID0gIkxlZ2VuZCIsIHZhbHVlcyA9IGNvbV9uYW1lc190b3AgJT4lIHB1bGwoY29sKSkgCgojcGxvdF9seSA8LSBwbG90ICU+JSBwbG90bHk6OmdncGxvdGx5KCkKI2h0bWx3aWRnZXRzOjpzYXZlV2lkZ2V0KHBsb3RseTo6YXNfd2lkZ2V0KHBsb3RfbHkpLCAnLi4vb3V0cHV0XHZpc19wbG90bHlfdG9waWNfdGVybXMuaHRtbCcsIHNlbGZjb250YWluZWQgPSBUUlVFKQpgYGAKCgojIyBUb3BpY3Mgb3ZlciB0aW1lCgpgYGB7ciwgZmlnLndpZHRoID0gMTUsIGZpZy5oZWlnaHQ9Ny41fQp0ZXh0X2xkYV9nYW1tYSAlPiUKICByZW5hbWUod2VpZ2h0ID0gZ2FtbWEpICU+JQogIGxlZnRfam9pbihNICU+JSBzZWxlY3QoWFgsIFBZKSwgYnkgPSBjKCdkb2N1bWVudCcgPSAnWFgnKSkgJT4lCiAgbXV0YXRlKFBZID0gYXMubnVtZXJpYyhQWSkpICU+JQogIGdyb3VwX2J5KFBZLCBjb21fbmFtZSkgJT4lIHN1bW1hcmlzZSh3ZWlnaHQgPSBzdW0od2VpZ2h0KSkgJT4lIHVuZ3JvdXAoKSAlPiUKICBncm91cF9ieShQWSkgJT4lIG11dGF0ZSh3ZWlnaHRfUFkgPSBzdW0od2VpZ2h0KSkgJT4lIHVuZ3JvdXAoKSAlPiUKICBtdXRhdGUod2VpZ2h0X3JlbCA9IHdlaWdodCAvIHdlaWdodF9QWSkgJT4lCiAgc2VsZWN0KFBZLCBjb21fbmFtZSwgd2VpZ2h0LCB3ZWlnaHRfcmVsKSAlPiUKICBmaWx0ZXIoUFkgPj0gUFlfbWluICYgUFkgPD0gUFlfbWF4KSAlPiUKICBhcnJhbmdlKFBZLCBjb21fbmFtZSkgJT4lCiAgcGxvdF9zdW1tYXJ5X3RpbWVsaW5lKHkxID0gd2VpZ2h0LCB5MiA9IHdlaWdodF9yZWwsIHQgPSBQWSwgdF9taW4gPSBQWV9taW4sIHRfbWF4ID0gUFlfbWF4LCBieSA9IGNvbV9uYW1lLCAgbGFiZWwgPSBUUlVFLCBwYWwgPSBwYWxfdHAsIAogICAgICAgICAgICAgICAgICAgICAgICB5MV90ZXh0ID0gIlRvcGljIHBvcHVsYXJpdHkgYW5udWFseSIsIHkyX3RleHQgPSAiU2hhcmUgb2YgdG9waWMgYW5udWFsbHkiKSArCiAgcGxvdF9hbm5vdGF0aW9uKHRpdGxlID0gcGFzdGUoJ1RvcGljIE1vZGVsbGluZzonLCB2YXJfaW5zdCwgJ0RlcHQuJywgdmFyX2RlcHQsIHNlcCA9ICcgJyksCiAgICAgICAgICAgICAgICAgIHN1YnRpdGxlID0gcGFzdGUoJ1RpbWVmcmFtZTonLCBQWV9taW4sICctJywgUFlfbWF4ICwgc2VwID0gJyAnKSwKICAgICAgICAgICAgICAgICAgY2FwdGlvbiA9ICdBYnNvbHV0ZSB0b3BpYyBhcHBlYXJhbmNlIChsZWZ0KSwgUmVsYXRpdmUgdG9waWMgYXBwZWFyYW5jZSAocmlnaHQpJykKYGBgCgoKPCEtLSAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgLS0+CjwhLS0gIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIC0tPgo8IS0tICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIE5FWFQgUEFSVCAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyAtLT4KPCEtLSAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgLS0+CjwhLS0gIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIC0tPgoKYGBge3IsIGluY2x1ZGU9RkFMU0V9CnJtKHRleHRfdGlkeSwgdGV4dF9sZGEpCmBgYAoKCiMgS25vd2xlZGdlIEJhc2VzOiBDby1DaXRhdGlvbiBuZXR3b3JrIGFuYWx5c2lzIHsudGFic2V0fQoKYGBge3IsIGluY2x1ZGU9RkFMU0V9CkNfbncgPC0gcmVhZFJEUyhwYXN0ZTAoJy4uLy4uL3RlbXAvQ19ud18nLCBzdHJfdG9fbG93ZXIodmFyX2luc3QpLCAnXycsIHN0cl90b19sb3dlcih2YXJfZGVwdCksICcucmRzJykpCmBgYAoKYGBge3IsIGluY2x1ZGU9RkFMU0V9CmNvbV9uYW1lc19jaXQgPC0gdGliYmxlKCAKICBjb20gPSAxOihDX253ICU+JSBwdWxsKGNvbSkgJT4lIG5fZGlzdGluY3QoKSksCiAgdHlwZSA9ICdLQicsCiAgY29sID0gY29tICU+JSBnZ19jb2xvcl9zZWxlY3QocGFsID0gcGFsX2tiKSwKICBjb21fbmFtZSA9IAogICAgIyAjIDFzdCBhbHRlcm5hdGl2ZTogTnVtYmVyIHRoZW0gMS1uCiAgICBwYXN0ZSh0eXBlLCAxOihDX253ICU+JSBwdWxsKGNvbSkgJT4lIG5fZGlzdGluY3QoKSkpCiAgICAjICMgMm5kIGFsdGVybmF0aXZlOiBMb2FkIGZyb20gY3N2CiAgIyByZWFkX2NzdignLi4vLi4vZGF0YS9jb21tdW5pdHlfbGFiZWxpbmcnKSAlPiUgZmlsdGVyKHR5cGUgPSAna25vd2xlZGdlX2Jhc2UnLCBpbnN0aXR1dGUgPSB2YXJfaW5zdCwgZGVwYXJ0bWVudCA9IHZhcl9kZXB0KSAlPiUgYXJyYW5nZShjb20pICU+JSBwdWxsKGxhYmVsKQogICMgM3JkIGFsdGVybmF0aXZlOiBkZWNsYXJlIGhlcmUKICAgICNjKCcxIFRJUyAmIE1hcmtldHMnLCAnMiA/IC4uLiAnLCkKICApCmBgYAoKYGBge3IsIGluY2x1ZGU9RkFMU0V9CkNfbncgJTw+JSBsZWZ0X2pvaW4oY29tX25hbWVzX2NpdCAlPiUgc2VsZWN0KGNvbSwgY29tX25hbWUsIGNvbCksIGJ5ID0gImNvbSIpCmBgYAoKCioqTm90ZToqKiBUaGlzIGFuYWx5c2lzIHJlZmVycyB0aGUgY28tY2l0YXRpb24gYW5hbHlzaXMsIHdoZXJlIHRoZSBjaXRlZCByZWZlcmVuY2VzIGFuZCBub3QgdGhlIG9yaWdpbmFsIHB1YmxpY2F0aW9ucyBhcmUgdGhlIHVuaXQgb2YgYW5hbHlzaXMuIFNlZSB0YWIgYFRlY2huaWNhbCBkZXNjcmlwdGlvbmBmb3IgYWRkaXRpb25hbCBleHBsYW5hdGlvbnMKCiMjIEtub3dsZWRnZSBCYXNlcyBzdW1tYXJ5CgojIyMgTWFpbiBJbmRpY2F0b3JzCkluIG9yZGVyIHRvIHBhcnRpdGlvbiBuZXR3b3JrcyBpbnRvIGNvbXBvbmVudHMgb3IgY2x1c3RlcnMsIHdlIGRlcGxveSBhICoqY29tbXVuaXR5IGRldGVjdGlvbioqIHRlY2huaXF1ZSBiYXNlZCBvbiB0aGUgKipMb3ZhaW4gQWxnb3JpdGhtKiogKEJsb25kZWwgZXQgYWwuLCAyMDA4KS4gVGhlIExvdmFpbiBBbGdvcml0aG0gaXMgYSBoZXVyaXN0aWMgbWV0aG9kIHRoYXQgYXR0ZW1wdHMgdG8gb3B0aW1pemUgdGhlIG1vZHVsYXJpdHkgb2YgY29tbXVuaXRpZXMgd2l0aGluIGEgbmV0d29yayBieSBtYXhpbWl6aW5nIHdpdGhpbi0gYW5kIG1pbmltaXppbmcgYmV0d2Vlbi1jb21tdW5pdHkgY29ubmVjdGl2aXR5LiBXZSBpZGVudGlmeSB0aGUgZm9sbG93aW5nIGNvbW11bml0aWVzID0ga25vd2xlZGdlIGJhc2VzLgoKYGBge3J9CkNfbncgJT4lCiAgZ3JvdXBfYnkoY29tX25hbWUpICU+JQogIHN1bW1hcmlzZShuID0gbigpLCBkZW5zaXR5X2ludCA9ICgoc3VtKGRncl9pbnQpIC8gKG4oKSAqIChuKCkgLSAxKSkpICogMTAwKSAlPiUgcm91bmQoMykpICU+JQogIHJlbG9jYXRlKGNvbV9uYW1lLCBldmVyeXRoaW5nKCkpCmBgYAoKYGBge3J9CmtiX3N1bSA8LUNfbncgJT4lIGdyb3VwX2J5KGNvbSkgJT4lIAogIHNlbGVjdChjb20sIG5hbWUsIGRncl9pbnQsIGRncikgJT4lCiAgYXJyYW5nZShjb20sIGRlc2MoZGdyX2ludCkpICU+JQogIG11dGF0ZShuYW1lID0gbmFtZSAlPiUgc3RyX3RydW5jKDE1MCkpICU+JQogIHNsaWNlX21heChvcmRlcl9ieSA9IGRncl9pbnQsIG4gPSAxMCwgd2l0aF90aWVzID0gRkFMU0UpICU+JSAKICBrYWJsZSgpIAoKZm9yKGkgaW4gMTpucm93KGNvbV9uYW1lc19jaXQpKXsKICBrYl9zdW0gPC0ga2Jfc3VtICU+JQogICAgcGFja19yb3dzKHBhc3RlMCgnS25vd2xlZGdlIEJhc2UgMicsIGksICc6ICcsIGNvbV9uYW1lc19jaXRbaSwgJ2NvbV9uYW1lJ10pLCAoaSoxMC05KSwgIChpKjEwKSwgbGFiZWxfcm93X2NzcyA9ICJiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2OyBjb2xvcjogI2ZmZjsiKSAKICB9CgprYl9zdW0gJT4lCiAga2FibGVfc3R5bGluZyhib290c3RyYXBfb3B0aW9ucyA9IGMoInN0cmlwZWQiLCAiaG92ZXIiLCAiY29uZGVuc2VkIiwgInJlc3BvbnNpdmUiKSwgZm9udF9zaXplID0gMTApCmBgYAoKIyMjIERldmVsb3BtZW50IG9mIEtub3dsZWRnZSBCYXNlcwoKYGBge3IsIGluY2x1ZGU9RkFMU0V9CmVsXzJtIDwtIHJlYWRSRFMocGFzdGUwKCcuLi8uLi90ZW1wL2VsXzJtXycsIHN0cl90b19sb3dlcih2YXJfaW5zdCksICdfJywgc3RyX3RvX2xvd2VyKHZhcl9kZXB0KSwgJy5yZHMnKSkgJT4lCiAgZHJvcF9uYSgpCmBgYAoKCmBgYHtyLCBpbmNsdWRlPUZBTFNFfQpjaXRfY29tX3llYXIgPC0gZWxfMm0gJT4lCiAgY291bnQoY29tX2NpdCwgUFksIG5hbWUgPSAnVEMnKSAlPiUKICBncm91cF9ieShQWSkgJT4lCiAgbXV0YXRlKFRDX3JlbCA9IFRDIC8gc3VtKFRDKSkgJT4lCiAgdW5ncm91cCgpICU+JQogIGFycmFuZ2UoUFksIGNvbV9jaXQpICU+JQogIGxlZnRfam9pbihjb21fbmFtZXNfY2l0ICwgYnkgPSBjKCdjb21fY2l0JyA9ICdjb20nKSkgJT4lIAogIGNvbXBsZXRlKGNvbV9uYW1lLCBQWSwgZmlsbCA9IGxpc3QoVEMgPSAwLCBUQ19yZWwgPSAwKSkKCmBgYAoKYGBge3IsIGZpZy53aWR0aCA9IDE1LCBmaWcuaGVpZ2h0PTcuNX0KY2l0X2NvbV95ZWFyICU+JQogIHBsb3Rfc3VtbWFyeV90aW1lbGluZSh5MSA9IFRDLCB5MiA9IFRDX3JlbCwgdCA9IFBZLCB0X21pbiA9IFBZX21pbiwgdF9tYXggPSBQWV9tYXgsIGJ5ID0gY29tX25hbWUsIHBhbCA9IHBhbF9rYiwgbGFiZWwgPSBUUlVFLAogICAgICAgICAgICAgICAgICAgICAgICB5MV90ZXh0ID0gIk51bWJlciBjaXRhdGlvbnMgcmVjaWV2ZWQgYW5udWFsbHkiLCAgeTJfdGV4dCA9ICJTaGFyZSBvZiBjaXRhdGlvbnMgcmVjaWV2ZWQgYW5udWFsbHkiKSArCiAgcGxvdF9hbm5vdGF0aW9uKHRpdGxlID0gcGFzdGUoJ0tub3dsZWRnZSBCc2VzOicsIHZhcl9pbnN0LCAnRGVwdC4nLCB2YXJfZGVwdCwgc2VwID0gJyAnKSwKICAgICAgICAgICAgICAgICAgc3VidGl0bGUgPSBwYXN0ZSgnVGltZWZyYW1lOicsIFBZX21pbiwgJy0nLCBQWV9tYXggLCBzZXAgPSAnICcpLAogICAgICAgICAgICAgICAgICBjYXB0aW9uID0gJ0Fic29sdXRlIGtub3dsZWRnZSBiYXNlIGFwcGVhcmFuY2UgKGxlZnQpLCBSZWxhdGl2ZSBrbm93bGVkZ2UgYmFzZSBhcHBlYXJhbmNlIChyaWdodCknKQpgYGAKCiMjIFRlY2huaWNhbCBkZXNjcmlwdGlvbgpJbiBhIGNvLWNpdHRpb24gbmV0d29yaywgdGhlIHN0cmVuZ3RoIG9mIHRoZSByZWxhdGlvbnNoaXAgYmV0d2VlbiBhIHJlZmVyZW5jZSBwYWlyICRtJCBhbmQgJG4kICgkc197bSxufV57Y29jfSQpIGlzIGV4cHJlc3NlZCBieSB0aGUgbnVtYmVyIG9mIHB1YmxpY2F0aW9ucyAkQyQgd2hpY2ggYXJlIGpvaW50bHkgY2l0aW5nIHJlZmVyZW5jZSAkbSQgYW5kICRuJC4gCgokJHNfe20sbn1ee2NvY30gPSBcc3VtX2kgY197aSxtfSBjX3tpLG59JCQKClRoZSBpbnR1aXRpb24gaGVyZSBpcyB0aGF0IHJlZmVyZW5jZXMgd2hpY2ggYXJlIGZyZXF1ZW50bHkgY2l0ZWQgdG9nZXRoZXIgYXJlIGxpa2VseSB0byBzaGFyZSBjb21tb25hbGl0aWVzIGluIHRoZW9yeSwgdG9waWMsIG1ldGhvZG9sb2d5LCBvciBjb250ZXh0LiBJdCBjYW4gYmUgaW50ZXJwcmV0ZWQgYXMgYSBtZWFzdXJlIG9mIHNpbWlsYXJpdHkgYXMgZXZhbHVhdGVkIGJ5IG90aGVyIHJlc2VhcmNoZXJzIHRoYXQgZGVjaWRlIHRvIGpvaW50bHkgY2l0ZSBib3RoIHJlZmVyZW5jZXMuIEJlY2F1c2UgdGhlIHB1YmxpY2F0aW9uIHByb2Nlc3MgaXMgdGltZS1jb25zdW1pbmcsIGNvLWNpdGF0aW9uIGlzIGEgYmFja3dhcmQtbG9va2luZyBtZWFzdXJlLCB3aGljaCBpcyBhcHByb3ByaWF0ZSB0byBtYXAgdGhlIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIGNvcmUgbGl0ZXJhdHVyZSBvZiBhIGZpZWxkLgoKCjwhLS0gIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIC0tPgo8IS0tICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyAtLT4KPCEtLSAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyBORVhUIFBBUlQgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgLS0+CjwhLS0gIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIC0tPgo8IS0tICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyAtLT4KCiMgUmVzZWFyY2ggQXJlYXM6IEJpYmxpb2dyYXBoaWMgY291cGxpbmcgYW5hbHlzaXMgey50YWJzZXR9CgojIyBSZXNlYXJjaCBBcmVhcyBtYWluIHN1bW1hcnkKClRoaXMgaXMgYXJndWFibHkgdGhlIG1vcmUgaW50ZXJlc3RpbmcgcGFydC4gSGVyZSwgd2UgaWRlbnRpZnkgdGhlIGxpdGVyYXR1cmUncyBjdXJyZW50IGtub3dsZWRnZSBmcm9udGllciBieSBjYXJyeWluZyBvdXQgYSBiaWJsaW9ncmFwaGljIGNvdXBsaW5nIGFuYWx5c2lzIG9mIHRoZSBwdWJsaWNhdGlvbnMgaW4gb3VyIGNvcnB1cy4gVGhpcyBtZWFzdXJlICB1c2VzIGJpYmxpb2dyYXBoaWNhbCBpbmZvcm1hdGlvbiBvZiAgcHVibGljYXRpb25zIHRvIGVzdGFibGlzaCBhIHNpbWlsYXJpdHkgcmVsYXRpb25zaGlwIGJldHdlZW4gdGhlbS4gQWdhaW4sIG1ldGhvZCBkZXRhaWxzIHRvIGJlIGZvdW5kIGluIHRoZSB0YWIgYFRlY2huaWNhbCBkZXNjcmlwdGlvbmAuIEFzIHlvdSB3aWxsIHNlZSwgd2UgaWRlbnRpZnkgdGhlIG1haW4gcmVzZWFyY2ggYXJlYSwgYnV0IGFsc28gYSBzZXQgb2YgYWRqYWNlbnQgcmVzZWFyY2ggYXJlYXMgd2l0aCBzb21lIHRoZW9yZXRpY2FsL21ldGhvZG9sb2dpY2FsL2FwcGxpY2F0aW9uIG92ZXJsYXAuCgpgYGB7ciwgaW5jbHVkZT1GQUxTRX0KTV9iaWIgPC0gcmVhZFJEUyhwYXN0ZTAoJy4uLy4uL3RlbXAvTV9iaWJfJywgc3RyX3RvX2xvd2VyKHZhcl9pbnN0KSwgJ18nLCBzdHJfdG9fbG93ZXIodmFyX2RlcHQpLCAnLnJkcycpKSAlPiUgYXNfdGliYmxlKCkKYGBgCgpgYGB7ciwgaW5jbHVkZT1GQUxTRX0KY29tX25hbWVzX2JpYiA8LSB0aWJibGUoIAogIGNvbSA9IDE6KE1fYmliICU+JSBwdWxsKGNvbSkgJT4lIG5fZGlzdGluY3QoKSksCiAgdHlwZSA9ICdSQScsCiAgY29sID0gY29tICU+JSBnZ19jb2xvcl9zZWxlY3QocGFsID0gcGFsX3JhKSwKICBjb21fbmFtZSA9IAogICAgIyAjIDFzdCBhbHRlcm5hdGl2ZTogTnVtYmVyIHRoZW0gMS1uCiAgICBwYXN0ZSh0eXBlLCAxOihNX2JpYiAlPiUgcHVsbChjb20pICU+JSBuX2Rpc3RpbmN0KCkpKQogICAgIyAjIDJuZCBhbHRlcm5hdGl2ZTogTG9hZCBmcm9tIGNzdgogICMgcmVhZF9jc3YoJy4uLy4uL2RhdGEvY29tbXVuaXR5X2xhYmVsaW5nJykgJT4lIGZpbHRlcih0eXBlID0gJ3Jlc2VhcmNoX2FyZWEnLCBpbnN0aXR1dGUgPSB2YXJfaW5zdCwgZGVwYXJ0bWVudCA9IHZhcl9kZXB0KSAlPiUgYXJyYW5nZShjb20pICU+JSBwdWxsKGxhYmVsKQogICMgM3JkIGFsdGVybmF0aXZlOiBkZWNsYXJlIGhlcmUKICAgICNjKCcxIFRJUyAmIE1hcmtldHMnLCAnMiA/IC4uLiAnLCkKICApCmBgYAoKYGBge3IsIGluY2x1ZGU9RkFMU0V9Ck1fYmliICU8PiUgbGVmdF9qb2luKGNvbV9uYW1lc19iaWIgJT4lIHNlbGVjdChjb20sIGNvbV9uYW1lLCBjb2wpLCBieSA9ICJjb20iKQpgYGAKCiMjIyBNYWluIENoYXJhY3RlcmlzdGljcwoKVG8gaWRlbnRpZnkgY29tbXVuaXRpZXMgaW4gdGhlIGZpZWxkJ3Mga25vd2xlZGdlIGZyb250aWVyIChsYWJlbGVkICoqcmVzZWFyY2ggYXJlYXMqKikgd2UgYWdhaW4gdXNlIHRoZSAqKkxvdmFpbiBBbGdvcml0aG0qKiAoQmxvbmRlbCBldCBhbC4sIDIwMDgpLiBXZSBpZGVudGlmeSB0aGUgZm9sbG93aW5nIGNvbW11bml0aWVzID0gcmVzZWFyY2ggYXJlYXMuCgpgYGB7ciwgaW5jbHVkZT1GQUxTRX0KY29tX3N1bW1hcnlfYmliIDwtIE1fYmliICU+JQogIGRyb3BfbmEoY29tKSAlPiUKICBncm91cF9ieShjb20sIGNvbV9uYW1lKSAlPiUKICBzdW1tYXJpc2UobiA9IG4oKSwgZGVuc2l0eV9pbnQgPSAoKHN1bShkZ3JfaW50KSAvIChuKCkgKiAobigpIC0gMSkpKSAqIDEwMCkgJT4lIHJvdW5kKDMpKSAlPiUKICBzZWxlY3QoY29tLCBjb21fbmFtZSwgZXZlcnl0aGluZygpKQpgYGAKCmBgYHtyfQpjb21fc3VtbWFyeV9iaWIKYGBgCgoKIyMjIENhdGVnb3JpemF0aW9uCgpJIHVwIHRvIG5vdyBnYWluIG9ubHkgcHJvdmlkZSB0aGUgMTAgbW9zdCBjZW50cmFsIGFydGljbGVzLCB3aGljaCBjYW4gYmUgdXNlZCB0byBjbGFzc2lmeSB0aGVtCgpgYGB7cn0KcmFfc3VtIDwtIE1fYmliICU+JSBncm91cF9ieShjb21fbmFtZSkgJT4lIAogIGxlZnRfam9pbihNICU+JSBzZWxlY3QoWFgsIEFVLCBQWSwgVEksIFRDKSwgYnkgPSAnWFgnKSAlPiUKICBtdXRhdGUoZGdyX3NlbGVjdCA9IChkZ3JfaW50IC8gbWF4KGRncl9pbnQpICogKFRDIC8gbWF4KFRDKSkpICkgJT4lCiAgc2xpY2VfbWF4KG9yZGVyX2J5ID0gZGdyX3NlbGVjdCwgbiA9IDEwLCB3aXRoX3RpZXMgPSBGQUxTRSkgJT4lIAogIG11dGF0ZShUQ195ZWFyID0gVEMgLyAoMjAyMSArIDEgLSBQWSksCiAgICAgICAgIEFVID0gQVUgJT4lIHN0cl90cnVuYygyNSksCiAgICAgICAgIFRJID0gVEkgJT4lIHN0cl90cnVuYygxMjUpKSAlPiUKICBzZWxlY3QoY29tX25hbWUsIEFVLCBQWSwgVEksIGRncl9pbnQsIFRDLCBUQ195ZWFyKSAlPiUKICBrYWJsZSgpCgoKZm9yKGkgaW4gMTpucm93KGNvbV9uYW1lc19iaWIpKXsKICByYV9zdW0gICU8PiUKICAgIHBhY2tfcm93cyhwYXN0ZTAoJ1Jlc2VhcmNoIEFyZWEgJywgaSwgJzogJywgY29tX25hbWVzX2JpYltpLCAnY29tX25hbWUnXSksIChpKjEwLTkpLCAgKGkqMTApLCBsYWJlbF9yb3dfY3NzID0gImJhY2tncm91bmQtY29sb3I6ICM2NjY7IGNvbG9yOiAjZmZmOyIpIAogIH0KCnJhX3N1bSAlPiUga2FibGVfc3R5bGluZyhib290c3RyYXBfb3B0aW9ucyA9IGMoInN0cmlwZWQiLCAiaG92ZXIiLCAiY29uZGVuc2VkIiwgInJlc3BvbnNpdmUiKSwgZm9udF9zaXplID0gMTApCmBgYAoKIyMjIERldmVsb3BtZW50CgpgYGB7ciwgZmlnLndpZHRoID0gMTUsIGZpZy5oZWlnaHQ9Ny41fQpNX2JpYiAlPiUKICBsZWZ0X2pvaW4oTSAlPiUgc2VsZWN0KFhYLCBQWSksIGJ5ID0gJ1hYJykgJT4lCiAgbXV0YXRlKFBZID0gUFkgJT4lIGFzLm51bWVyaWMoKSkgJT4lCiAgZ3JvdXBfYnkoY29tX25hbWUsIFBZKSAlPiUgc3VtbWFyaXNlKG4gPSBuKCkpICU+JSB1bmdyb3VwKCkgJT4lCiAgZ3JvdXBfYnkoUFkpICU+JSBtdXRhdGUobl9QWSA9IHN1bShuKSkgJT4lIHVuZ3JvdXAoKSAlPiUKICBtdXRhdGUobl9yZWwgPSBuIC8gbl9QWSkgJT4lCiAgc2VsZWN0KGNvbV9uYW1lLCBQWSwgbiwgbl9yZWwpICU+JQogIGFycmFuZ2UoY29tX25hbWUsIFBZKSAlPiUgCiAgY29tcGxldGUoY29tX25hbWUsIFBZLCBmaWxsID0gbGlzdChuID0gMCwgbl9yZWwgPSAwKSkgJT4lCiAgcGxvdF9zdW1tYXJ5X3RpbWVsaW5lKHkxID0gbiwgeTIgPSBuX3JlbCwgdCA9IFBZLCB0X21pbiA9IFBZX21pbiwgdF9tYXggPSBQWV9tYXgsIGJ5ID0gY29tX25hbWUsIGxhYmVsID0gVFJVRSwgcGFsID0gcGFsX3JhLAogICAgICAgICAgICAgICAgICAgICAgICB5MV90ZXh0ID0gIk51bWJlciBwdWJsaWNhdGlvbnMgYW5udWFsbHkiLCB5Ml90ZXh0ID0gIlNoYXJlIG9mIHB1YmxpY2F0aW9ucyBhbm51YWxseSIpICsKICBwbG90X2Fubm90YXRpb24odGl0bGUgPSBwYXN0ZSgnUmVzZWFyY2ggQXJlYXM6JywgdmFyX2luc3QsICdEZXB0LicsIHZhcl9kZXB0LCBzZXAgPSAnICcpLAogICAgICAgICAgICAgICAgICBzdWJ0aXRsZSA9IHBhc3RlKCdUaW1lZnJhbWU6JywgUFlfbWluLCAnLScsIFBZX21heCAsIHNlcCA9ICcgJyksCiAgICAgICAgICAgICAgICAgIGNhcHRpb24gPSAnQWJzb2x1dGUgcmVzZWFyY2ggYXJlYSBhcHBlYXJhbmNlIChsZWZ0KSwgUmVsYXRpdmUgcmVzZWFyY2ggYXJlYSBhcHBlYXJhbmNlIChyaWdodCknKQpgYGAKCiMjIyBDb25uZWN0aXZpdHkgYmV0d2VlbiB0aGUgcmVzZWFyY2ggYXJlYXMKCmBgYHtyLCBpbmNsdWRlPUZBTFNFfQpnX2FnZyA8LSByZWFkUkRTKHBhc3RlMCgnLi4vLi4vdGVtcC9nX2JpYl9hZ2dfJywgc3RyX3RvX2xvd2VyKHZhcl9pbnN0KSwgJ18nLCBzdHJfdG9fbG93ZXIodmFyX2RlcHQpLCAnLnJkcycpKSAlTj4lCiAgYXJyYW5nZShjb20pICMgJT4lCiMgICBtdXRhdGUobmFtZSA9IG5hbWVzX3JhICU+JSBwdWxsKGNvbV9yYV9uYW1lKSwKIyAgICAgICAgICBjb2xvciA9IGNvbHNfcmEpCmBgYAoKYGBge3IsIGZpZy5oZWlnaHQ9IDcuNSwgZmlnLndpZHRoPTcuNX0KZ19hZ2cgJUU+JSAKICBmaWx0ZXIod2VpZ2h0ID4gMCAmIGZyb20gIT0gdG8pICU+JQogIGZpbHRlcih3ZWlnaHQgPj0gcXVhbnRpbGUod2VpZ2h0LCAwLjI1KSApICAlTj4lCiAgbXV0YXRlKGNvbSA9IGNvbSAlPiUgZmFjdG9yKCkpICU+JQogIGdncmFwaChsYXlvdXQgPSAiY2lyY2xlIikgKyAKICBnZW9tX2VkZ2VfZmFuKHN0cmVuZ2h0ID0gMC4wNzUsIGFlcyh3aWR0aCA9IHdlaWdodCksIGFscGhhID0gMC4yKSAgKyAKICBnZW9tX25vZGVfcG9pbnQoYWVzKHNpemUgPSBOLCBjb2xvciA9IGNvbSkpICArIAogIGdlb21fbm9kZV90ZXh0KGFlcyhsYWJlbCA9IGNvbSksIHJlcGVsID0gVFJVRSkgKwogIHRoZW1lX2dyYXBoKGJhc2VfZmFtaWx5ID0gIkFyaWFsIikgKwogIHNjYWxlX2NvbG9yX2JyZXdlcihwYWxldHRlID0gcGFsX3JhKSArCiAgbGFicyh0aXRsZSA9IHBhc3RlKCdSZXNlYXJjaCBBcmVhIENvbm5lY3Rpdml0eTonLCB2YXJfaW5zdCwgJ0RlcHQuJywgdmFyX2RlcHQsIHNlcCA9ICcgJyksCiAgICAgICAgICAgICAgICAgIHN1YnRpdGxlID0gcGFzdGUoJ1RpbWVmcmFtZTonLCBQWV9taW4sICctJywgUFlfbWF4ICwgc2VwID0gJyAnKSwKICAgICAgICAgICAgICAgICAgY2FwdGlvbiA9ICdOb2RlcyA9IElkZW50aWZpZWQgUmVzZWFyY2ggQXJlYXM7IEVkZ2VzOiBCaWJsaW9ncmFwaGljIGNvdXBsaW5nIHN0cmVuZ2h0IChKQWNjYXJkIHdlaWdodGVkKScpCmBgYAoKIyMjIEtub3dsZWRnZSBCYXNlcywgUmVzZWFyY2ggQXJlYXMgJiBUb3BpY3MKCmBgYHtyLCBpbmNsdWRlPUZBTFNFfQojIE5vZGVzCm5sXzNtIDwtIGNvbV9uYW1lc19iaWIgJT4lCiAgYmluZF9yb3dzKGNvbV9uYW1lc19jaXQpICU+JQogIGJpbmRfcm93cyhjb21fbmFtZXNfdG9wKSAlPiUKICByZW5hbWUobmFtZSA9IGNvbV9uYW1lLAogICAgICAgICBjb21fbnIgPSBjb20pICU+JQogIHJlbG9jYXRlKG5hbWUpCgojIEVkZ2VzCmVsXzJtX2tiIDwtIGVsXzJtICU+JQogIHNlbGVjdCgtZnJvbSwgLXRvKSAlPiUKICBpbm5lcl9qb2luKGNvbV9uYW1lc19jaXQgJT4lIHNlbGVjdChjb20sIGNvbV9uYW1lKSwgYnkgPSBjKCdjb21fY2l0JyA9ICdjb20nKSkgJT4lCiAgaW5uZXJfam9pbihjb21fbmFtZXNfYmliICU+JSBzZWxlY3QoY29tLCBjb21fbmFtZSwgY29sKSwgYnkgPSBjKCdjb21fYmliJyA9ICdjb20nKSkgJT4lCiAgbXV0YXRlKHdlaWdodCA9IDEpICU+JQogIHJlbmFtZShmcm9tID0gY29tX25hbWUueCwKICAgICAgICAgdG8gPSBjb21fbmFtZS55KSAlPiUgIyBnZW5lcmljCiAgc2VsZWN0KGZyb20sIHRvLCB3ZWlnaHQsIGNvbCkgJT4lIAogIGRyb3BfbmEoKSAlPiUgCiAgY291bnQoZnJvbSwgdG8sIGNvbCwgd3QgPSB3ZWlnaHQsIG5hbWUgPSAnd2VpZ2h0JykgJT4lCiAgZmlsdGVyKHBlcmNlbnRfcmFuayh3ZWlnaHQpID49IDAuMjUpICU+JQogIHdlaWdodF9qYWNjYXJkKGkgPSBmcm9tLCBqID0gdG8sIHcgPSB3ZWlnaHQpICU+JSAKICBzZWxlY3QoLXdlaWdodCkKCmVsXzJtX3RvcGljIDwtIHRleHRfbGRhX2dhbW1hICU+JSBzZWxlY3QoLXRvcGljLCAtY29sKSAlPiUKICBsZWZ0X2pvaW4oTV9iaWIgJT4lIHNlbGVjdChYWCwgY29tKSAlPiUgZHJvcF9uYShjb20pLCBieSA9IGMoJ2RvY3VtZW50JyA9ICdYWCcpKSAlPiUKICBpbm5lcl9qb2luKGNvbV9uYW1lc19iaWIgJT4lIHNlbGVjdChjb20sIGNvbV9uYW1lLCBjb2wpLCBieSA9IGMoJ2NvbScgPSAnY29tJykpICU+JQogIHJlbmFtZShmcm9tID0gY29tX25hbWUueSwKICAgICAgICAgdG8gPSBjb21fbmFtZS54LAogICAgICAgICB3ZWlnaHQgPSBnYW1tYSkgJT4lICMgZ2VuZXJpYwogIHNlbGVjdChmcm9tLCB0bywgd2VpZ2h0LCBjb2wpICU+JSAKICBkcm9wX25hKCkgJT4lIAogIGNvdW50KGZyb20sIHRvLCBjb2wsIHd0ID0gd2VpZ2h0LCBuYW1lID0gJ3dlaWdodCcpICU+JQogIGZpbHRlcihwZXJjZW50X3Jhbmsod2VpZ2h0KSA+PSAwLjI1KSAlPiUKICB3ZWlnaHRfamFjY2FyZChpID0gZnJvbSwgaiA9IHRvLCB3ID0gd2VpZ2h0KSAlPiUgc2VsZWN0KC13ZWlnaHQpCgojIGdyYXBoCmdfM20gPC0gZWxfMm1fa2IgJT4lIAogIGJpbmRfcm93cyhlbF8ybV90b3BpYykgJT4lCiAgYXNfdGJsX2dyYXBoKGRpcmVjdGVkID0gVFJVRSkgJU4+JQogIGxlZnRfam9pbihubF8zbSwgYnkgPSAnbmFtZScpICU+JQogIG11dGF0ZSgKICAgIGxldmVsID0gY2FzZV93aGVuKAogICAgICB0eXBlID09ICJLQiIgfiAxLAogICAgICB0eXBlID09ICJSQSIgfiAyLAogICAgICB0eXBlID09ICJUUCIgfiAzKSwKICAgIGNvb3JkX3kgPSAwLjEsCiAgICBjb29yZF94ID0gMC4wMDEgKyAxLyhtYXgobGV2ZWwpLTEpICogKGxldmVsLTEpCiAgICApICAlTj4lCiAgZmlsdGVyKCFub2RlX2lzX2lzb2xhdGVkKCksICFpcy5uYShsZXZlbCkpCmBgYAoKYGBge3IsIGluY2x1ZGU9RkFMU0V9CiMjIEJ1aWxkIHNhbmtleSBwbG90CmZpZyA8LSBwbG90X2x5KHR5cGUgPSAic2Fua2V5IiwgCiAgICAgICAgICAgICAgIG9yaWVudGF0aW9uID0gImgiLAogICAgICAgICAgICAgICBhcnJhbmdlbWVudCA9ICJzbmFwIiwKICBub2RlID0gbGlzdCgKICAgIGxhYmVsID0gZ18zbSAlTj4lIGFzX3RpYmJsZSgpICU+JSBwdWxsKG5hbWUpLAogICAgeCA9IGdfM20gJU4+JSBhc190aWJibGUoKSAlPiUgcHVsbChjb29yZF94KSwKICAgIHkgPSBnXzNtICVOPiUgYXNfdGliYmxlKCkgJT4lIHB1bGwoY29vcmRfeSksCiAgICBjb2xvciA9IGdfM20gJU4+JSBhc190aWJibGUoKSAlPiUgcHVsbChjb2wpLCAKICAgIHBhZCA9IDQKICApLCAKICBsaW5rID0gbGlzdCgKICAgIHNvdXJjZSA9IChnXzNtICVFPiUgYXNfdGliYmxlKCkgJT4lIHB1bGwoZnJvbSkpIC0xLAogICAgdGFyZ2V0ID0gKGdfM20gJUU+JSBhc190aWJibGUoKSAlPiUgcHVsbCh0bykpIC0xLAogICAgdmFsdWUgPSAgZ18zbSAlRT4lIGFzX3RpYmJsZSgpICU+JSBwdWxsKHdlaWdodF9qYWMpLAogICAgY29sb3IgPSBnXzNtICVFPiUgYXNfdGliYmxlKCkgJT4lIHB1bGwoY29sKSAlPiUgY29sMnJnYigpICU+JSBhcy5tYXRyaXgoKSAlPiUgdCgpICU+JSBhc190aWJibGUoKSAlPiUgCiAgICAgIG11dGF0ZShjb2xfcmdiID0gcGFzdGUwKCdyZ2JhKCcsIHJlZCwgJywnICwgZ3JlZW4sICcsJywgYmx1ZSwgJywwLjc1KScpKSAlPiUgIHB1bGwoY29sX3JnYikKICAgICkKKSAlPiUgCiAgbGF5b3V0KHRpdGxlID0gcGFzdGUoJ0tub3dsZWRnZSBCYXNlcywgUmVzZWFyY2ggQXJlYXMgJiBUb3BpY3M6JywgdmFyX2luc3QsICdEZXB0LicsIHZhcl9kZXB0LCBzZXAgPSAnICcpLAogICAgICAgICBtYXJnaW4gPSBsaXN0KGwgPSA1MCwgciA9IDUwLCBiID0gMTAwLCB0ID0gMTAwLCBwYWQgPSAyKSkgCmBgYAoKYGBge3IsIGZpZy5oZWlnaHQ9IDEwLCBmaWcud2lkdGg9MTIuNX0KZmlnCmBgYAoKCgoKIyMgVGVjaG5pY2FsIGRlc2NyaXB0aW9uCkluIGEgYmlibGlvZ3JhcGhpYyBjb3VwbGluZyBuZXR3b3JrLCB0aGUgKipjb3VwbGluZy1zdHJlbmd0aCoqIGJldHdlZW4gcHVibGljYXRpb25zIGlzIGRldGVybWluZWQgYnkgdGhlIG51bWJlciBvZiBjb21tb25seSBjaXRlZCByZWZlcmVuY2VzIHRoZXkgc2hhcmUsIGFzc3VtaW5nIGEgY29tbW9uIHBvb2wgb2YgcmVmZXJlbmNlcyB0byBpbmRpY2F0ZSBzaW1pbGFyaXR5IGluIGNvbnRleHQsIG1ldGhvZHMsIG9yIHRoZW9yeS4gRm9ybWFsbHksIHRoZSBzdHJlbmd0aCBvZiB0aGUgcmVsYXRpb25zaGlwIGJldHdlZW4gYSBwdWJsaWNhdGlvbiBwYWlyICRpJCBhbmQgJGokICgkc197aSxqfV57YmlifSQpIGlzIGV4cHJlc3NlZCBieSB0aGUgbnVtYmVyIG9mIGNvbW1vbmx5IGNpdGVkIHJlZmVyZW5jZXMuIAoKJCRzX3tpLGp9XntiaWJ9ID0gXHN1bV9tIGNfe2ksbX0gY197aixtfSQkCgpTaW5jZSBvdXIgY29ycHVzIGNvbnRhaW5zIHB1YmxpY2F0aW9ucyB3aGljaCBkaWZmZXIgc3Ryb25nbHkgaW4gdGVybXMgb2YgdGhlIG51bWJlciBvZiBjaXRlZCByZWZlcmVuY2VzLCB3ZSBub3JtYWxpemUgdGhlIGNvdXBsaW5nIHN0cmVuZ3RoIGJ5IHRoZSBKYWNjYXJkIHNpbWlsYXJpdHkgY29lZmZpY2llbnQuIEhlcmUsIHdlIHdlaWdodCB0aGUgaW50ZXJjZXB0IG9mIHR3byBwdWJsaWNhdGlvbnMnIGJpYmxpb2dyYXBoeSAoc2hhcmVkIHJlZmVlbmNlcykgYnkgdGhlaXIgdW5pb24gKG51bWJlciBvZiBhbGwgcmVmZXJlbmNlcyBjaXRlZCBieSBlaXRoZXIgJGkkIG9yICRqJCkuIEl0IGlzIGJvdW5kZWQgYmV0d2VlbiB6ZXJvIGFuZCBvbmUsIHdoZXJlIG9uZSBpbmRpY2F0ZXMgdGhlIHR3byBwdWJsaWNhdGlvbnMgdG8gaGF2ZSBhbiBpZGVudGljYWwgYmlibGlvZ3JhcGh5LCBhbmQgemVybyB0aGF0IHRoZXkgZG8gbm90IHNoYXJlIGFueSBjaXRlZCByZWZlcmVuY2UuIFRoZXJlYnksIHdlIHByZXZlbnQgcHVibGljYXRpb25zIGZyb20gaGF2aW5nIGhpZ2ggY291cGxpbmcgc3RyZW5ndGggZHVlIHRvIGEgbGFyZ2UgYmlibGlvZ3JhcGh5IChlLmcuLCBsaXRlcmF0dXJlIHN1cnZleXMpLgoKJCRTX3tpLGp9XntqYWMtYmlifSA9XGZyYWN7QyhpIFxjYXAgail9e0MoaSBcY3VwIGopfSA9IFxmcmFje3Nfe2ksan1ee2JpYn19e2NfaSArIGNfaiAtIHNfe2ksan1ee2JpYn19JCQKCk1vcmUgcmVjZW50IGFydGljbGVzIGhhdmUgYSBoaWdoZXIgcG9vbCBvZiBwb3NzaWJsZSByZWZlcmVuY2VzIHRvIGNvLWNpdGUgdG8sIGhlbmNlIHRoZXkgYXJlIG1vcmUgbGlrZWx5IHRvIGJlIGNvdXBsZWQuIENvbnNlcXVlbnRseSwgYmlibGlvZ3JhcGhpYyBjb3VwbGluZyByZXByZXNlbnRzIGEgZm9yd2FyZCBsb29raW5nIG1lYXN1cmUsIGFuZCB0aGUgbWV0aG9kIG9mIGNob2ljZSB0byBpZGVudGlmeSB0aGUgY3VycmVudCBrbm93bGVkZ2UgZnJvbnRpZXIgYXQgdGhlIHBvaW50IG9mIGFuYWx5c2lzLgoKPCEtLSAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgLS0+CjwhLS0gIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIC0tPgo8IS0tICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIE5FWFQgUEFSVCAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyAtLT4KPCEtLSAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgLS0+CjwhLS0gIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIC0tPgoKCiMgRW5kbm90ZXMKCmBgYHtyfQojIEFmdGVyIGtuaXR0ZWQgZG8gdGhpcwpmaWxlLnJlbmFtZShmcm9tID0gIjkyX2Rlc2NyaXB0aXZlc19tYXBwaW5nLm5iLmh0bWwiLCB0byA9IHBhc3RlMCgnLi4vb3V0cHV0L2ZpZWxkX21hcHBpbmcvZmllbGRfbWFwcGluZ18nLCBzdHJfdG9fbG93ZXIodmFyX2luc3QpLCAnXycsIHN0cl90b19sb3dlcih2YXJfZGVwdCksICcubmIuaHRtbCcpKQpgYGAKCgoKCg==